package Definitions;

import java.util.ArrayList;

/*****************************************************************
* Name : Edge
* Aim : This class aims to keep the data of neighbors for the related node and the edgeType 
*****************************************************************/
public class EdgeClass 
{
	/*Id of the neighborhood relationship which will differ with respect to related edgeType*/
	int id;		
	/*This Node list represents the node's neighbours*/
	ArrayList <NodeClass>  neigbours; 		
	

	/*The arraylist that will keep the y vector after LO.*/
	ArrayList<Double> labelRatiosOfLinks; 
	/*The label that will be assigned after LO.*/
	int linkLabel;
	
	ArrayList <Double> similarities;
	
	
	/*Constructor of the class*/
	public EdgeClass() 
	{
		// TODO Auto-generated constructor stub
		neigbours=new ArrayList   <NodeClass>();
		similarities=new ArrayList<Double>();
		labelRatiosOfLinks= new ArrayList<Double>();		
	}
	
	public ArrayList<Double> getSimilarities() {
		return similarities;
	}

	public void setSimilarities(ArrayList<Double> similarities) {
		this.similarities = similarities;
	}

	public int getId()
	{
		return id;
	}

	public void setId(int id)
	{
		this.id = id;
	}
	
	public ArrayList<NodeClass> getNeigbours()
	{
		return neigbours;
	}

	public void setNeigbours(ArrayList<NodeClass> neigbours)
	{
		this.neigbours = neigbours;
	}
	
	public ArrayList<Double> getLabelRatiosOfLinks() {
		return labelRatiosOfLinks;
	}

	public void setLabelRatiosOfLinks(ArrayList<Double> labelRatiosOfLinks) {
		this.labelRatiosOfLinks = labelRatiosOfLinks;
	}

	public int getLinkLabel() {
		return linkLabel;
	}

	public void setLinkLabel(int linkLabel) {
		this.linkLabel = linkLabel;
	}
	
	@Override
	public String toString() {
	// TODO Auto-generated method stub
	return neigbours.toString();
	}
	
	public void print()
	{
		System.out.println("id:  " + id  +  "  Orders of neighbours:");
		for(int i=0; i< neigbours.size() ;i++)
		System.out.print(neigbours.get(i) + "  "); 
	}
}
